import { NativeProps } from '../../utils/native-props'

export type TabProps = {
  /** 是否禁用. default: - */
  disabled?: boolean
  /** 不可见时是否销毁 DOM 结构 */
  destroyOnClose?: boolean
  /** 被隐藏时是否渲染 DOM 结构 */
  forceRender?: boolean
  /** 对应 activeKey */
  key: string
  /** 选项卡头显示文字 */
  title: React.ReactNode
  /** childern */
  children?: React.ReactNode
} & NativeProps

export type TabsProps = {
  /** 是否开启自动滚动 default: `true` */
  autoScroll?: boolean
  /** 当前激活 tab 面板的 key. default: - */
  activeKey?: string | null
  /** 激活 tab 下划线的模式 default: `auto` */
  activeLineMode?: 'auto' | 'full' | 'fixed'
  /** 初始化选中面板的 key (如果没有设置 activeKey). default: - */
  defaultActiveKey?: string | null
  /** 文档排版方向 目前仅支持`ltr`. default: `ltr` */
  direction?: 'ltr' | 'rtl'
  /** 切换面板的回调. default: - */
  onChange?: (key: string) => void
  /** 选项卡头部是否拉伸 default: `true` */
  stretch?: boolean
  /** childern */
  children?: React.ReactNode
} & NativeProps<
  | '--fixed-active-line-width'
  | '--active-line-height'
  | '--active-line-border-radius'
  | '--fixed-active-line-width'
  | '--title-font-size'
  | '--content-padding'
  | '--active-title-color'
  | '--active-line-color'
>
